#ifndef CAMP_H
#define CAMP_H

#include "Territoire.hpp"
#include "Etat.h"

class Camp
{
    public:
        Camp();
        Camp(std::string n);
        void setIndice(int indice);
        int getIndice() const;
        void setNbTerr(int nbTerr);
        int getNbTerr() const;

        void setEtat(Etat e);
                Etat getEtat() const;
                //void setCouleur(Couleur c);
                //Couleur getCouleur() const;
        int nbDesADeploi(int nbterrcarte,Territoire** terri) const;
                int nbTerritoire() const;
                int nbMaxTerritoireAdjacent(int nbterrcarte,Territoire** terri) const;
                bool enVie() const;
                bool appartient(Territoire * t) const;
                void changerEtat();
                void ajouterTerritoire(Territoire* T);
                void retirerTerritoire(Territoire* T);

        /*
        void setColor(const sf::Color& couleur);
        const sf::Color& getColor() const;
        */
        virtual ~Camp();

        std::vector<Territoire*> territoires;

        static sf::Color* Couleurs;

    protected:
    private:
        int indice;
        int nbTerr;
        Etat etat;
        //Couleur couleur;
};

#endif // CAMP_H
